尽管Python和数据库在金融分析中日益重要,Excel仍然是不可替代的工具:
本节学习如何用 pandas 高效读取Excel文件。
read_excel 函数:基础用法pd.read_excel() 是 Pandas 读取 Excel 文件的核心函数。
基本语法:
返回一个 DataFrame 对象,可直接用于后续分析。
read_excel 常用参数详解| 参数 | 说明 | 示例 |
|---|---|---|
sheet_name |
工作表名或索引 | 'Sheet1' 或 0 |
skiprows |
跳过的行数 | 1 |
usecols |
读取的列范围 | 'B:F' 或列名列表 |
dtype |
指定列的数据类型 | {'价格': float} |
converters |
列转换函数字典 | {'Flagship': fix_missing} |
nrows |
只读取前N行 | 100 |
# ⚠️ 平台原始代码 - 请原样输入至教学平台(注释除外),平台才会判定答案正确
# 注:stores.xlsx数据文件本地没有,但平台已经内置
import pandas as pd # 导入Pandas数据分析库
df = pd.read_excel("stores.xlsx",sheet_name="2019", skiprows=1, usecols="B:F") # 从Excel文件读取数据存入df
print(df.info()) # 输出数据框基本信息
def fix_missing(x): # 定义函数fix_missing
return False if x in ["", "MISSING"] else x # 返回计算结果
# 从Excel文件读取数据存入df2
df2 = pd.read_excel("stores.xlsx",sheet_name="2019", skiprows=1, usecols="B:F",converters={"Flagship": fix_missing})
print(df2.info()) # 输出数据框基本信息
print(df2) # 输出数据框数据
with pd.ExcelFile("stores.xlsx") as f: # 使用上下文管理器
# 从Excel文件读取数据存入data1
data1 = pd.read_excel(f, "2019", skiprows=1, usecols="B:F", nrows=2,converters={"Flagship": fix_missing})
# 从Excel文件读取数据存入data2
data2 = pd.read_excel(f, "2020", skiprows=1, usecols="B:F", nrows=2,converters={"Flagship": fix_missing})
print(data1) # 输出数据数据stores.xlsx 的 2019 工作表读取数据converters 参数处理脏数据fix_missing 函数:将空字符串和 'MISSING' 替换为 Falseconverters 参数在读取时就完成数据清洗ExcelFile 类读取多个工作表ExcelFile 只打开文件一次,多次读取不同工作表nrows=2 限制只读取前2行(用于快速预览)ExcelFile 类的优势使用 ExcelFile 类而非多次调用 read_excel 的三大优势:
with 语句确保文件使用后自动关闭| 方法 | 适用场景 |
|---|---|
pd.read_excel() |
读取单个工作表 |
converters 参数 |
读取时清洗脏数据 |
pd.ExcelFile() |
高效读取同一文件的多个工作表 |
核心要点:
read_excel 是读取 Excel 的核心函数converters 可在读取阶段完成数据清洗ExcelFile 类[商业大数据分析与应用]